// 配置微信接口 如：文章分享 在线支付等
import Vue from 'vue'
import { Toast } from 'vant'
import wx from 'weixin-jsapi' // 微信支付jsdk引入
const vm = new Vue() // 实例化vue

const getJspApi = {
  // 配置jsdk
  getJsApiAuth (url) { // 配置jsdk
    vm.$api.wxLogin.getJsApiAuth({
      url: url
    }).then(res => {
      if (res.data.status === 0) {
        wx.config({
          debug: false, // 开启调试模式
          appId: res.data.data.appid, // 必填，公众号的唯一标识
          timestamp: res.data.data.timestamp, // 必填，生成签名的时间戳
          nonceStr: res.data.data.nonceStr, // 必填，生成签名的随机串
          signature: res.data.data.signature, // 必填，签名
          jsApiList: [
            'onMenuShareTimeline', 'onMenuShareAppMessage',
            'onMenuShareQQ', 'onMenuShareWeibo', 'onMenuShareQZone',
            'updateAppMessageShareData', 'updateTimelineShareData', 'addCard'
          ] // 必填，需要使用的JS接口列表
        })
        this.checkJsApi()
      }
    })
  },
  // 调用分享接口
  getShare (dataInfo) {
    let title = dataInfo.title
    let desc = dataInfo.desc
    // let link = process.env.REQ_URL + 'comeonSahare/' + this.userInfo.activityCode
    let link = dataInfo.link
    let imgUrl = dataInfo.imgUrl
    wx.ready(function () {
      wx.onMenuShareAppMessage({
        title: title, // 分享标题
        desc: desc, // 分享描述
        link: link, // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
        imgUrl: imgUrl, // 分享图标
        type: '', // 分享类型,music、video或link，不填默认为link
        dataUrl: '', // 如果type是music或video，则要提供数据链接，默认为空
        success: function (res) {
          vm.$store.commit('switchOverlayShow', false)
          vm.$api.activityModular.postShareArticle({
            articleId: dataInfo.articleId
          }).then(res => {
            if (res.data.status === 0) {
              Toast({
                message: res.data.msg,
                icon: 'success',
                duration: 1000
              })
            }
          })
        }
      })
      wx.onMenuShareTimeline({
        title: title, // 分享标题
        link: link, // 分享链接，该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
        imgUrl: imgUrl, // 分享图标
        success: function () {
          // 用户点击了分享后执行的回调函数
          vm.$store.commit('switchOverlayShow', false)
          vm.$api.activityModular.postShareArticle({
            articleId: dataInfo.articleId
          }).then(res => {
            console.log(res.data.status)
            if (res.data.status === 0) {
              Toast({
                message: '分享成功',
                icon: 'success',
                duration: 1000
              })
            }
          })
        }
      })
    })
  },
  // 检查微信的接口是否可用
  checkJsApi () {
    wx.checkJsApi({
      jsApiList: [
        'onMenuShareTimeline', 'onMenuShareAppMessage',
        'onMenuShareQQ', 'onMenuShareWeibo', 'onMenuShareQZone',
        'updateAppMessageShareData', 'updateTimelineShareData', 'addCard'
      ], // 需要检测的JS接口列表，所有JS接口列表见附录2,
      success: function (res) {
        // 以键值对的形式返回，可用的api值true，不可用为false
        // 如：{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}
        console.log(res)
      }
    })
  },
  // 添加卡包
  addCard (cardId, cardExt) {
    wx.addCard({
      cardList: [
        {
          cardId: cardId,
          cardExt: cardExt
        }
      ],
      success (res) {
      },
      cancel: function (res) {
      }
    })
  }
}
export default getJspApi
